//
//  array_signature.h
//  compilation
//
//  Created by Kevin Le perf on 17/01/12.
//  Copyright (c) 2012 e2co technologie. All rights reserved.
//

#ifndef compilation_array_signature_h
#define compilation_array_signature_h

struct array_signature{
	int _stack[32]; //last argument = first in this array
	int _number; //number of []
};

struct array_signature * array_create();
void array_free(void * f);

/*
 ajoute la taille de la dimension
 retourne 0 si ok
 retourne -1 si a == null 
 retourne -2 si on a depasse 32 []*/
int array_add(struct array_signature * a, int t);

/*
 retourne le nombre de dimension du tableau 0 si erreur */
int array_get_dim(struct array_signature * a);

/*
 retourne la taille de la dimension i du tableau 
 -1 si erreur */
int array_get_size_dim(struct array_signature * a, int i);

void array_print(struct array_signature * s);
#endif
